import math
s1 = input()
s2 = input()
diff = 0
for i in range(len(s1)):
if s1[i] != s2[i]: diff+=1
if diff%2==1:
print("impossible")
else:
i = j = 0
while i<len(s1):
print(s1[i], end = '')
if s1[i] != s2[i]: j+=1
if j==diff//2: break
i+=1
print(s2[i+1:])
#include <iostream>
using namespace std;
string compare(string a, string b) {
if(a > b) {
string t = a;
a = b;
b = t;
}
int c = 0, d = a.length(), i, j;
for(i = 0; i < d; i++)
if (a[i] != b[i]) c++;
if (c % 2 > 0) return "impossible";
for(j = c, i = 0; i < d && j > c / 2; i++)
if (a[i] != b[i]) {
b[i] = a[i];
j--;
}
return b;
}
int main() {
string a, b;
cin >> a >> b;
cout << compare(a, b);
}
137. Single Number II | 130. Surrounded Regions |
129. Sum Root to Leaf Numbers | 120. Triangle |
102. Binary Tree Level Order Traversal | 96. Unique Binary Search Trees |
75. Sort Colors | 74. Search a 2D Matrix |
71. Simplify Path | 62. Unique Paths |
50. Pow(x, n) | 43. Multiply Strings |
34. Find First and Last Position of Element in Sorted Array | 33. Search in Rotated Sorted Array |
17. Letter Combinations of a Phone Number | 5. Longest Palindromic Substring |
3. Longest Substring Without Repeating Characters | 1312. Minimum Insertion Steps to Make a String Palindrome |
1092. Shortest Common Supersequence | 1044. Longest Duplicate Substring |
1032. Stream of Characters | 987. Vertical Order Traversal of a Binary Tree |
952. Largest Component Size by Common Factor | 212. Word Search II |
174. Dungeon Game | 127. Word Ladder |
123. Best Time to Buy and Sell Stock III | 85. Maximal Rectangle |
84. Largest Rectangle in Histogram | 60. Permutation Sequence |